#include<bits/stdc++.h>
#define endl "\n";
#define ll long long
#define all(rq) rq.begin(),rq.end()

using namespace std;
const int INF=0x3f3f3f3f;
ll fpow(ll base,ll pow,ll mod){
	ll ans=1;
	while(pow){
		if(pow&1){
			ans*=base;
			ans%=mod;
		}
		base*=base;
		base%=mod;
		pow>>=1;
	}
	
	return ans;
}

int main(){
	ll n,p;
	cin>>n>>p;
	
	for(int i=1;i<=n;i++){ //对于互质的数a与p 并且p为质数 a在模p的逆元则为a^(p-2)%p  所以可以利用快速幂算法快速解出逆元 
		cout<<fpow(i,p-2,p)<<endl;		
	}
	return 0;
}